package com.gonsin.gview.annotations.board.form;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * 表单项
 */
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface GFormItem {

    /**
     * 文件上传
     */
    GFile file() default @GFile(enable = false);

    /**
     * 复选框
     */
    GCheckBox checkBox() default @GCheckBox(enable = false);

    /**
     * 复选框
     */
    GSwitch gswitch() default @GSwitch(enable = false);

    /**
     * 单选框
     */
    GRadio radio() default @GRadio(enable = false);

    /**
     * 富文本编辑区
     */
    GRichText richText() default @GRichText(enable = false);

    /**
     * 下拉选择器
     */
    GSelector selector() default @GSelector(enable = false);

    /**
     * 文本输入框
     */
    GTextInput textInput() default @GTextInput(enable = false);

    /**
     * 树状复选框
     */
    GTreeCheckBox treeCheckBox() default @GTreeCheckBox(enable = false);

    /**
     * 树状下拉选择器
     */
    GTreeSelector treeSelector() default @GTreeSelector(enable = false);

    /**
     * 树状多选下拉框
     */
    GMultiTreeSelector multiTreeSelector() default @GMultiTreeSelector(enable = false);

    /**
     * 多选下拉框
     */
    GMultiSelector multiSelector() default @GMultiSelector(enable = false);

    /**
     * 隐藏数据
     */
    GHidden hidden() default @GHidden(enable = false);

    /**
     * 静态文本框
     */
    GLabel label() default @GLabel(enable = false);

    /**
     * 分隔线
     */
    GLine line() default @GLine(enable = false);

    /**
     * 日期选择器
     */
    GDateSelector dateSelector() default @GDateSelector(enable = false);

    /**
     * 日期和时间选择器
     */
    GDateTimeSelector dateTimeSelector() default @GDateTimeSelector(enable = false);

    /**
     * 时间选择器
     */
    GTimeSelector timeSelector() default @GTimeSelector(enable = false);

    /**
     * 静态图片框
     */
    GImage image() default @GImage(enable = false);

    /**
     * 静态图片框
     */
    GBlockStart blockStart() default @GBlockStart(enable = false);

    /**
     * 时长选择器
     */
    GDelaySelector delaySelector() default @GDelaySelector(enable = false);

    /**
     * 标签
     */
    GTag tag() default @GTag(enable = false);

    /**
     * 静态图片框
     */
    GBlockEnd blockEnd() default @GBlockEnd(enable = false);

}
